package com.weng.bigdata.micro.service.schedule.center.model;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.weng.framework.validator.annotation.NotEmpty;
import lombok.Data;

import java.util.Date;
import java.util.List;


/**
* 添加单个任务
* @author wengzhonghui
* @date: 2021-06-29 14:11:38
*/
@Data
public class AddJobReq {

    /**
     *  自定义jobId,主要用于任务工作流的父子依赖关系，添加单个任务不需要
     */
    private String customJobId;

    /**
     * 执行器编码
     */
    @NotEmpty(message = "执行器编码不能为空")
    private String workerCode;

    /**
     * 任务名称
     */
    @NotEmpty(message = "任务名称不能为空")
    private String name;

    /**
     * 任务执行cron
     */
    private String jobCron;

    /**
     * 失败重试次数
     */
    private Integer executorFailRetryCount;

    /**
     * 父任务Id
     */
    private String parentJobIds;

    /*
     * 参数列表
     */
    private List<JobParamReq> paramList;

    /**
     * 任务开始时间
     */
    @JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd HH:mm:ss")
    private Date jobStartTime;

    /**
     * 任务结束时间
     */
    @JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd HH:mm:ss")
    private Date jobEndTime;

    /**
     * 是否有任务时间限制0否1是
     */
    private Integer isTimeLimit;

    // 是否子任务1是0否
    private Integer isChild;

    // 数据工作流Id
    private String workflowConfigId;


}
